/* ========================================================================= */
/* ------------------------------------------------------------------------- */
/*!		
  \file			stgsbase.h
  \date			Dec 2012
  \author		TNick

  \brief		Contains the definition for StgsBase class


*//*


 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Please read COPYING and README files in root folder
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/
/* ------------------------------------------------------------------------- */
/* ========================================================================= */
#ifndef __STGSBASE_INC__
#define __STGSBASE_INC__
//
//
//
//
/*  INCLUDES    ------------------------------------------------------------ */

#include    <memtrack.h>
#include    <QIcon>
#include	"apppaths.h"

/*  INCLUDES    ============================================================ */
//
//
//
//
/*  CLASS    --------------------------------------------------------------- */

/**
*	@brief	
*/
class StgsBase		:	public MemTrack		{
	BBM_TRACK( StgsBase )
	
	//
	//
	//
	//
	/*  DEFINITIONS    ----------------------------------------------------- */

	/*  DEFINITIONS    ===================================================== */
	//
	//
	//
	//
	/*  DATA    ------------------------------------------------------------ */

private:

	

	/*  DATA    ============================================================ */
	//
	//
	//
	//
	/*  FUNCTIONS    ------------------------------------------------------- */

public:


	/**
	*	@brief	constructor;
	*/
	StgsBase			( void );


	/**
	*	@brief	destructor;
	*/
	virtual				~StgsBase		( void );

	
	/**
	*	@brief	apply /save the settings in this page
	*
	*	@return false to indicate bogus input
	*/
	virtual bool			apply					( QString & error_string ) = 0;


	/**
	*	@brief	reload original settings
	*/
	virtual void			reload					( void ) = 0;


	/**
	*	@brief	load default settings
	*/
	virtual void			defaults				( void ) = 0;


	/**
	*	@brief	get the widget for this instance
	*/
	virtual QWidget *		asWidget				( void ) = 0;


	/**
	*	@brief	the icon to use with this page
	*/
	virtual QIcon			icon					( void )
	{ return QIcon(); }


	/**
	*	@brief	the text to use with this page
	*/
	virtual QString			title					( void ) = 0;



	/*  FUNCTIONS    ======================================================= */
	//
	//
	//
	//

};	/*	class StgsBase	*/

/*  CLASS    =============================================================== */
//
//
//
//
#endif // __STGSBASE_INC__
/* ------------------------------------------------------------------------- */
/* ========================================================================= */
